From: Lukáš Tyrychtr Date: Wed, 14 Sep 2022 12:46:19 +0000 (+0200) Subject: Implement GtkAccessibleRange for GtkRange X-Git-Tag: archive/raspbian/4.12.3+ds-1+rpi1~1^2^2^2~116^2~1^2~202^2~13 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=0304eaec94c96aeffa0ad83ce209fd1b26d4b972;p=gtk4.git Implement GtkAccessibleRange for GtkRange --- diff --git a/gtk/gtkrange.c b/gtk/gtkrange.c index 7ebb2d4316..53b852c6f5 100644 --- a/gtk/gtkrange.c +++ b/gtk/gtkrange.c @@ -28,6 +28,7 @@ #include "gtkrangeprivate.h" #include "gtkaccessible.h" +#include "gtkaccessiblerange.h" #include "gtkadjustmentprivate.h" #include "gtkcolorscaleprivate.h" #include "gtkcssboxesprivate.h" @@ -246,8 +247,12 @@ static gboolean gtk_range_scroll_controller_scroll (GtkEventControllerScrol static void gtk_range_set_orientation (GtkRange *range, GtkOrientation orientation); +static void gtk_range_accessible_range_init (GtkAccessibleRangeInterface *iface); + G_DEFINE_TYPE_WITH_CODE (GtkRange, gtk_range, GTK_TYPE_WIDGET, G_ADD_PRIVATE (GtkRange) + G_IMPLEMENT_INTERFACE (GTK_TYPE_ACCESSIBLE_RANGE, + gtk_range_accessible_range_init) G_IMPLEMENT_INTERFACE (GTK_TYPE_ORIENTABLE, NULL)) @@ -435,6 +440,27 @@ gtk_range_class_init (GtkRangeClass *class) gtk_widget_class_set_css_name (widget_class, I_("range")); } +static double +gtk_range_accessible_range_get_minimum_increment (GtkAccessibleRange *accessible_range) +{ + GtkRange *range = GTK_RANGE (accessible_range); + return gtk_adjustment_get_minimum_increment (gtk_range_get_adjustment (range)); +} + +static void +gtk_range_accessible_range_set_current_value (GtkAccessibleRange *accessible_range, double value) +{ + GtkRange *range = GTK_RANGE (accessible_range); + gtk_range_set_value (range, value); +} + +static void +gtk_range_accessible_range_init (GtkAccessibleRangeInterface *iface) +{ + iface->get_minimum_increment = gtk_range_accessible_range_get_minimum_increment; + iface->set_current_value = gtk_range_accessible_range_set_current_value; +} + static void gtk_range_set_property (GObject *object, guint prop_id,